#ifndef _IPROCESSOR_HPP_20120411
#define _IPROCESSOR_HPP_20120411

namespace tcp
{
	class Connection;
};

namespace datagram
{
	class IDatagram;
};

using namespace tcp;
using namespace datagram;

class IProcessor
{
	public :
		virtual ~IProcessor() {}

		virtual void accept(Connection & conn) = 0;
		virtual void remove(Connection & conn) = 0;

		virtual void process_input(Connection & conn, IDatagram & datagram) = 0;
};

#endif

